package com.maidou.qiantai.common.utils.util;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @Author maidou
 * @Date 2023/4/30 22:57
 */
public class DateUtils {

    private static final String DATE_FORMAT = "yyyy-MM/dd";
    private static final String DATE_FORMAT_DATETIME = "yyyy-MM-dd HH:mm:ss";

    /**
     * 将日期字符串解析为日期对象
     *
     * @param dateString 日期字符串
     * @return 日期对象
     * @throws ParseException 解析异常
     */
    public static Date parseDate(String dateString) throws ParseException {
        DateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
        return dateFormat.parse(dateString);
    }

    /**
     * 将日期字符串解析为日期对象
     *
     * @param dateString 日期字符串
     * @return 日期对象
     * @throws ParseException 解析异常
     */
    public static Date parseDate(String dateString,String dataFormat) throws ParseException {
        DateFormat dateFormat = new SimpleDateFormat(dataFormat);
        return dateFormat.parse(dateString);
    }

    /**
     * 将日期对象格式化为字符串
     * @dataFormat 格式
     * @return 格式化后的日期字符串
     */
    public static String format(String dataFormat) {
        Date date = new Date();
        DateFormat dateFormat = new SimpleDateFormat(dataFormat);
        return dateFormat.format(date);
    }

    /**
     * 获取日期字符串  yyyy-MM-dd HH:mm:ss
     * @dataFormat 格式
     * @return
     */
    public static String getDateTime() {
        Date date = new Date();
        DateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT_DATETIME);
        return dateFormat.format(date);
    }

    /**
     * 将日期对象格式化为字符串
     *
     * @return 格式化后的日期字符串
     */
    public static String format() {
        Date date = new Date();
        DateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
        return dateFormat.format(date);
    }
}
